package com.css.zfzx.fxpg.modules.surveyspot.service;

import com.alibaba.fastjson.JSONObject;
import com.css.zfzx.fxpg.modules.surveyspot.repository.entity.FxSurveySpotEntity;
import com.css.zfzx.fxpg.modules.surveyspot.viewobjects.FxSurveySpotQueryParams;
import com.css.bpm.platform.sys.dict.repository.entity.DictItemEntity;
import org.springframework.web.multipart.MultipartFile;

import javax.servlet.http.HttpServletResponse;
import java.util.List;

/**
 * @author leon
 * @date 2020-11-27
 */

public interface FxSurveySpotService {

    JSONObject queryFxSurveySpots(FxSurveySpotQueryParams queryParams, int curPage, int pageSize);

    FxSurveySpotEntity getFxSurveySpot(String id);

    FxSurveySpotEntity saveFxSurveySpot(FxSurveySpotEntity fxSurveySpot);

    FxSurveySpotEntity updateFxSurveySpot(FxSurveySpotEntity fxSurveySpot);

    void deleteFxSurveySpots(List<String> ids);

    List<DictItemEntity> getValidDictItemsByDictCode(String dictCode);

    String importExcel(MultipartFile file);

    String exportExcel(FxSurveySpotQueryParams queryParams, HttpServletResponse response);

    List<FxSurveySpotEntity> queryFxSurveySpotsForStatistic(FxSurveySpotQueryParams queryParams);

    List<FxSurveySpotEntity> getFxSurveySpots(FxSurveySpotQueryParams queryParams);

    String judgeRational(FxSurveySpotEntity fxSurveySpot);

    List<String> getSurveySpotNames();
}
